package cn.zhz.customview.view.explosion;

import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import cn.zhz.customview.R;

/**
 * @author: zhuanghz
 * @createdTime: 2019/6/5 13:30
 * @desc: 控件爆炸效果思路：首先先根据控件生成一张bitmap的图片，类似快照。然后将图片转成粒子（二维数据存放，包含粒子的颜色，大小、位置）
 */
public class ExplosionActivity extends AppCompatActivity {

    private ImageView iv_exp;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_explosion_layout);
        iv_exp = this.findViewById(R.id.explosion_iv_view);
        iv_exp.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //第一步，创建一个全屏的
                runAnim();

            }
        });
    }


    /**
     * 爆炸动画逻辑
     */
    public void runAnim() {
        //第一步：创建一个全屏的View，用来展示动画
        ExplosionField explosionField=new ExplosionField(this);
        //第二步：隐藏目标view，生成bitmap并生成粒子，显示在全屏view上
        explosionField.startExplode(iv_exp);
    }



}
